#pragma once
#include "Experiment.h"
#include <memory>
#include "World.h"
#include "Robot.h"

class RobotExperiment : public Experiment
{
public:
	RobotExperiment(World* world);
	float* getNeuralWeights();
	size_t getNeuralWeightsCount();
	float getFitness();
	void update(bool syncPhysicsAndGraphics);
	void reset(bool syncPhysicsAndGraphics);
	Robot* getRobot(){return robot.get();}
private:
	std::auto_ptr<Robot> robot;
	GameObject* ball;
	World* world;
};
